Modifying environmental chat distance based on avatar population density in an area of a virtual world

ABSTRACT

A mechanism for modifying a chat distance associated with an environmental chat based on the avatar population density of an area of a virtual universe associated with the environmental chat. An initial environmental chat distance may be determined based on the avatar population density, i.e., the number of avatars, in the area of the virtual universe associated with the environmental chat. The environmental chat distance may be modified in response to a change in the number of avatars in the area of the virtual universe associated with the environmental chat. The environmental chat distance may be modified such that the environmental chat distance is inversely proportional to the detected number of avatars in the virtual universe area associated with the environmental chat.

BACKGROUND

Embodiments of the inventive subject matter generally relate to thefield of virtual universe systems, and, more particularly, to amechanism for modifying environmental chat distance in virtual universesystems.

Virtual universe applications allow people to socialize and interact ina virtual universe. A virtual universe (“VU”) is a computer-basedsimulated environment intended for its residents to traverse, inhabit,and interact through the use of avatars. Many VUs are represented using3-D graphics and landscapes, and are populated by many thousands ofusers, known as “residents.” Other terms for VUs include metaverses and“3D Internet.”

SUMMARY

Various embodiments are disclosed of a method and apparatus formodifying a chat distance associated with an environmental chat in avirtual universe. According to one embodiment, the number of avatars inan area of the virtual universe associated with the environmental chatassociated with an avatar is determined. The environmental chat distanceis determined based on the number of avatars in the area of the virtualuniverse associated with the environmental chat. The environmental chatdistance is modified in response to a change in the number of avatars inthe area of the virtual universe associated with the environmental chat.

BRIEF DESCRIPTION OF THE DRAWINGS

The present embodiments may be better understood, and numerous objects,features, and advantages made apparent to those skilled in the art byreferencing the accompanying drawings.

FIG. 1 conceptually depicts an example virtual universe system includinga perspective of a virtual universe area associated with anenvironmental chat rendered at a client computer illustrating atechnique for modifying an environmental chat distance;

FIG. 2A conceptually depicts another example of a perspective of avirtual universe area associated with an environmental chat rendered ata client computer illustrating a technique for modifying anenvironmental chat distance;

FIG. 2B conceptually depicts an additional example of a perspective of avirtual universe area associated with an environmental chat rendered ata client computer illustrating a technique for modifying anenvironmental chat distance;

FIG. 3 depicts an example flow diagram of a method for modifyingenvironmental chat distance based on a number of avatars in an area ofthe virtual universe associated with an environmental chat;

FIG. 4A conceptually depicts an example of a perspective of a virtualuniverse area associated with an environmental chat rendered at a clientcomputer illustrating a technique for modifying an environmental chatdistance based on a detected number of avatars and a virtual universeobstruction;

FIG. 4B conceptually depicts another example of a perspective of avirtual universe area associated with an environmental chat rendered ata client computer illustrating a technique for modifying anenvironmental chat distance based on a detected number of avatars and avirtual universe obstruction;

FIG. 5 conceptually depicts an example virtual universe system includinga perspective of a virtual universe area associated with anenvironmental chat rendered at a client computer illustrating anothertechnique for modifying an environmental chat distance;

FIG. 6 depicts an example flow diagram of a method for modifyingenvironmental chat distance based on a determined environmental chatamount within a time window of a predetermined amount of time in an areaof the virtual universe associated with an environmental chat; and

FIG. 7 depicts an example computer system.

DESCRIPTION OF EMBODIMENT(S)

The description that follows includes exemplary systems, methods,techniques, instruction sequences and computer program products thatembody techniques of the present inventive subject matter. However, itis understood that the described embodiments may be practiced withoutthese specific details. For instance, although examples refer totechniques for modifying an environmental chat distance in an area of avirtual universe associated with an environmental chat implemented on aclient computer system, in other embodiments the techniques formodifying the environmental chat distance may be implemented on one ormore virtual universe servers, or in a distributed manner across variousnetwork components, e.g., across both a client computer system and avirtual universe server. In other instances, well-known instructioninstances, protocols, structures and techniques have not been shown indetail in order not to obfuscate the description.

In various embodiments, a chat distance associated with an environmentalchat (or environmental chat distance) is modified based on the avatarpopulation density of an area of the virtual universe associated withthe environmental chat. In one implementation, an initial environmentalchat distance is determined based on the avatar population density,i.e., the number of avatars, in the area of the virtual universeassociated with the environmental chat associated with an avatar beingcontrolled by a user. The environmental chat distance is modified inresponse to a change in the number of avatars in the area of the virtualuniverse associated with the environmental chat. For example, thedetected number of avatars may change when the avatar moves to adifferent location within the virtual universe, or when other avatarsmove into or out of the virtual universe area associated with theenvironmental chat. The environmental chat distance may be modified suchthat the environmental chat distance is inversely proportional to thedetected number of avatars in the virtual universe area associated withthe environmental chat. In various embodiments, the environmental chatdistance is modified based on an environmental chat amount detectedwithin a time window of a predetermined amount of time in an area of thevirtual universe associated with an environmental chat. Theenvironmental chat distance may be modified such that the environmentalchat distance is inversely proportional to the detected environmentalchat amount within the time window.

FIG. 1 conceptually depicts an example virtual universe system thatimplements a technique for modifying an environmental chat distanceassociated with an environmental chat in a virtual universe. The systemincludes a plurality of client computers 101A-N (hereinafter “clientcomputers 101”), a network 110 (e.g. the Internet), a plurality ofvirtual universe servers 120A-N (hereinafter “virtual universe servers120”), and a virtual universe database 130. A user of the clientcomputer 101A can access the virtual universe via the network 110 toperform activities in the virtual universe environment with an avatar105. The user or “resident” of the virtual universe may be a person,group of people, or organization that controls at least one avatar andmay own virtual land within the virtual universe. The user may use theavatar to traverse various regions within the virtual universe, inhabita region, and interact with the environment and other avatars for socialor business purposes, e.g., chat with other avatars at a virtualuniverse coffee shop or buy virtual clothing at a virtual universeshopping center. A virtual universe region is defined as an area (e.g.,land, air, and/or water) within the virtual universe, typicallysupported by one or more virtual universe servers. In the exampleillustrated with FIG. 1, each virtual universe server 120 may host oneor more regions. Avatars can move within regions by walking, swimming,or flying, and across regions by teleporting from one region to another.It is noted, however, that avatars can move in many different ways(e.g., teleporting within regions, running, gliding, etc.).

A perspective 123 of the virtual universe rendered at the clientcomputer 101A depicts the avatar 105 chatting with other avatars withina region of the virtual universe, e.g., hosted by virtual universeserver 120A. As illustrated, in one example, the avatar 105 is chattingwith avatar 106. The client computer 101A associated with avatar 105also displays a conversation between avatar 107 and avatar 108. In thisexample, since the avatars are participating in environmental textand/or voice chat, the user controlling the avatar 105 can see and/orhear conversations between other avatars located in the surroundingvirtual universe area, e.g., avatar 107 chatting with avatar 108. Anenvironmental chat is a type of chat in which the user controlling anavatar (e.g., avatar 105) sees and/or hears the conversations betweenother avatars that take place within a certain distance from the avatar,i.e., an environmental chat distance. Similarly, the users controllingthe other avatars can see and/or hear the interactions between certainavatars, e.g., the user controlling avatar 106 can see and/or hear theconversations between avatars that take place within a certain distancefrom the avatar 106. In other words, rather than being a chat that isassociated with a particular channel or a private chat session,environmental chat is a type of chat that displays and/or broadcastsvarious independent conversations taking place between various avatarswithin an area of the virtual universe to simulate aspects of the realworld. It is noted that the environmental chat may be an environmentaltext chat, an environmental voice chat, or both an environmental voiceand text chat.

In one implementation, at stage A, the client computer 101A determines anumber of avatars in an area of the virtual universe associated with theenvironmental chat associated with an avatar being controlled by a user(e.g., avatar 105). For example, the client computer 101A may determinethat 16 avatars (including avatar 105) are within the virtual universearea associated with the environmental chat. It is noted that thevirtual universe area associated with the environmental chat is thevirtual universe area that is displayed on the client computer 101Aassociated with the avatar 105 (e.g., via a web browser). Therefore, thevirtual universe area associated with the environmental chat changeswhen the avatar 105 moves from one virtual location to another. In theexample shown in FIG. 1, the virtual universe area associated with theenvironmental chat is the area having a radius of R3 virtual feet in alldirections (i.e., 360 degrees) from the avatar 105. It is noted,however, that in other implementations the virtual universe areaassociated with the environmental chat may be different, e.g., asdescribed below with reference to FIGS. 2A and 2B.

At stage B, the client computer 101A determines the environmental chatdistance based on the number of avatars in the area of the virtualuniverse associated with the environmental chat. In other words, theclient computer 101A determines an initial environmental chat distancebased on the avatar population density within a starting virtualuniverse area associated with the environmental chat. In oneimplementation, the environmental chat distance is inverselyproportional to the number of avatars in the area of the virtualuniverse. For example, in the perspective 123, the client computer 101Amay select a first environmental chat distance of R3 (e.g., 90 virtualfeet) when the determined number of avatars is within a first range ofnumber of avatars (e.g., 1-20 avatars), select a second environmentalchat distance of R2 (e.g., 60 virtual feet) when the determined numberof avatars is within a second range of number of avatars (e.g., 21-30avatars), or select a third environmental chat distance of R1 (e.g., 30virtual feet) when the determined number of avatars is within a thirdrange of number of avatars (e.g., 31-40+ avatars). It is noted, however,that in other implementations various predetermined number ofenvironmental chat distances corresponding to various ranges of numberof avatars may be associated with the virtual universe area associatedwith the environmental chat. Furthermore, it is noted that theenvironmental chat distance may be determined by other methods, e.g., aswill be described further below with reference to FIG. 5.

At stage C, the client computer 101A modifies the environmental chatdistance in response to a change in the number of avatars in the area ofthe virtual universe associated with the environmental chat. Forinstance, when the avatar 105 moves to a different location within thevirtual universe or when other avatars move into or out of the virtualuniverse area associated with the environmental chat, the number ofavatars in the virtual universe area may increase or decrease andtherefore the environmental chat distance may be changed, as will befurther described below with reference to FIG. 3. In one example, whenthe avatar 105 enters a densely populated virtual universe area, theenvironmental chat distance is reduced to decrease the number of avatarswithin the environmental chat distance. This may reduce the number ofavatar conversation presented within the environmental chat associatedwith the avatar 105. In another example, when the avatar 105 enters asparsely populated virtual universe area, the environmental chatdistance is increased, which may increase the number of avatarconversation presented within the environmental chat associated with theavatar 105.

It is noted that the mechanism described for determining and modifyingthe environmental chat distance in the virtual universe area associatedwith the environmental chat can be implemented within each of the clientdevice(s) 101, within one or more virtual universe servers 120, or in adistributed manner across various network components, e.g., across boththe client device 101A and the virtual universe server 120A. It is notedthat the Figures illustrate a bird's eye view of the virtual universearea associated with the environmental chat for simplicity; however, thevirtual universe area associated with the environmental chat may bedisplayed on the client computer in a variety of predefined and/or userselectable views, for example, bird's eye view, street-level view, or ahybrid view.

In the example of FIG. 1, the virtual universe area associated with theenvironmental chat, which is displayed on the client computer 101A, isthe virtual universe area with radius R3 virtual feet in all directions(i.e., 360 degrees) from the avatar 105. As described above, in thisexample, the environmental chat distance associated with theenvironmental chat may be a distance of R1, R2, or R3 virtual feetdepending on the number of avatars detected within the virtual universearea. It is noted, however, that in some implementations the virtualuniverse area associated with the environmental chat is an area withradius R3 virtual feet that is a fraction of the area show on FIG. 1.For instance, as shown in the example of FIG. 2A, the virtual universearea may span R3 virtual feet, 180 degrees from the avatars 105. It isfurther noted that in other implementations the virtual universe areaassociated with the environmental chat may span R3 virtual feet, 180degrees from the avatars 105, and a fixed number of feet R4 the other180 degrees, as shown in the example of FIG. 2B. For instance, thevirtual universe area may span 90 virtual feet, 180 degrees from theavatars 105, and a fixed 10 virtual feet the other 180 degrees. In thisexample, the R3 virtual feet may be modified based on the detectednumber of avatars in the virtual universe area, as was described above,but the fixed number of feet R4 spanning the other 180 degrees from theavatar 105 may remain constant regardless of the number of avatarsdetected in the virtual universe area.

FIG. 3 depicts an example flow diagram of a method for modifyingenvironmental chat distance based on a number of avatars in an area ofthe virtual universe associated with an environmental chat. At block305, the number of avatars in the area of the virtual universeassociated with the environmental chat associated with an avatar (e.g.,avatar 105) is determined. For instance, in the example shown on FIG. 1,the client computer 101A may determine that 16 avatars (including avatar105) are within the virtual universe area associated with theenvironmental chat. In some implementations, the client computer 101Amay periodically determine the number of avatars in the virtual universearea associated with the environmental chat, for example, periodicallyafter a programmable amount of time (e.g., every 1 or 5 minutes). Theclient computer may also determine the number of avatars in the virtualuniverse area associated with the environmental chat each time theavatar 105 moves to a new location. In some embodiments, the periodicrate at which the client computer 101A determines the number of avatarsin the virtual universe area associated with the environmental chat maybe automatically increases when the avatar 105 is in motion. Forexample, a rate of once every 60 seconds may be automatically increasedto a rate of once every 15 seconds.

At block 310, an environmental chat distance is determined based on thenumber of avatars in the area of the virtual universe associated withthe environmental chat. In one implementation, the environmental chatdistance is inversely proportional to the number of avatars in the areaof the virtual universe. In one example, the client computer 101A mayselect an environmental chat distance from a plurality of predefinedenvironmental chat distances based on the number of avatars in thevirtual universe area. In this example, a plurality of predefine rangesof number of avatars may be associated with the plurality of predefinedenvironmental chat distances. In response to determining the number ofavatars within the virtual universe area, the client computer 101Aselects the predefined environmental chat distance associated with thepredefined range of number of avatars corresponding to the detectednumber of avatars. For instance, in the example described above withreference to FIG. 1, if 16 avatars are detected within the virtualuniverse area, this corresponds to the first predefined range of numberof avatars (e.g., 1-20 avatars), and therefore the client computer 101Aselects the first predefined environmental chat distance of R3 (e.g., 90virtual feet), which is associated with the first predefined range ofnumber of avatars. However, if 32 avatars are detected, this correspondsto the third predefined range of number of avatars (e.g., 31-40+avatars), and therefore the client computer 101A selects the thirdpredefined environmental chat distance of R1 (e.g., 30 virtual feet),which is associated with the third predefined range of number ofavatars.

At block 315, the environmental chat distance is modified in response toa change in the number of avatars in the area of the virtual universeassociated with the environmental chat. When the avatar 105 moves to adifferent location within the virtual universe or when other avatarsmove into or out of the virtual universe area associated with theenvironmental chat, the number of avatars in the virtual universe areamay increase or decrease and therefore client computer 101A may modifythe environmental chat distance. In one example, in response to thedetected number of avatars changing from a first number of avatarsassociated with a first predefined range of number of avatars to anumber of avatars associated with a second predefined range of number ofavatars, the client computer 101A modifies the environmental chatdistance from a first predefined environmental chat distance associatedwith the first predefined range of number of avatars to a secondpredefined environmental chant distance associated with the secondpredefined range of number of avatars. In this example, if the newdetected number of avatars is still within the first predefined range,then the client computer 101A does not modify the environmental chatdistance. It is noted that the predefined ranges of number of avatarsassociated with the predefined environmental chat distances may beranges of any number of avatars wide, and some ranges may be wider thanother ranges. For instance, even though the example shown in FIG. 1describes a second predefined range that is ten avatars wide (i.e.,21-30 avatars), in other examples the second predetermined range may betwo avatars, five avatars, or thirty avatars wide.

It should be understood that the depicted flowchart of FIG. 3 is anexample meant to aid in understanding embodiments and should not be usedto limit embodiments or limit scope of the claims. Embodiments mayperform additional operations, fewer operations, operations in adifferent order, operations in parallel, and some operationsdifferently. For instance, in some embodiments, the environmental chatdistance may be modified regardless of the magnitude of the change innumber of avatars in the virtual universe area. For example, theenvironmental chat distance may be changed even if the detected numberof avatars changes by only one avatar. In this example, rather thanbeing defined by ranges, each specific number of avatars is associatedwith a different environmental chat distance, and therefore theenvironmental chat distance is modified each time the detected number ofavatars changes. Furthermore, in other embodiments, when a change in theavatar population density is detected, the environmental chat distance(e.g., measured in virtual feet) may be changed a greater amount in somesections of the virtual universe area associated with the environmentalchat compared to other sections, as long as it results in a desiredenvironmental chat area (e.g., measured in squared virtual feet)associated with the environmental chat.

In various implementations, the environmental chat distance may bemodified based on virtual universe obstructions in addition to thedetected number of avatars within the virtual universe area. Someexamples of virtual universe obstructions are virtual universe walls,buildings, and other structures that “block” the conversations of theavatars on the other side of the virtual universe obstruction from theenvironmental chat associated with the avatar 105, in order to simulateaspects of the real world. For instance, as shown in the example of FIG.4A, when the avatar 105 is next to a virtual universe obstruction 412(e.g., a house), the environmental chat distance may be significantlyreduced for the section of the virtual universe area affected by thevirtual universe obstruction 412 based on how close the avatar 105 is tothe virtual universe obstruction 412. In other words, the environmentalchat distance is modified for the section of the virtual universe areahaving the virtual universe obstruction 412 and also the area behind thevirtual universe obstruction 412 (from the perspective of the avatar105). In the example shown on FIG. 4A, if the environmental chatdistance is set at 90 virtual feet, the environmental chat distance forthe section of the virtual universe area affected by the virtualuniverse obstruction 412 may be modified to 0 virtual feet or 5 virtualfeet. Therefore, the avatar 105 would not be able to see and/or hear theconversations associated with the avatar 108, since the avatar 108 isbehind the virtual universe obstruction 412. The environmental chatdistance of 90 virtual feet may be maintained for the rest of thevirtual universe area not affected by the virtual universe obstruction412, unless the detected number of avatars changes. In the example shownin FIG. 4B, since the virtual universe obstruction 412 is about 25virtual feet from the avatar 105, the environmental chat distance may bereduced to 25 virtual feet for the section of the virtual universe areaaffected by the virtual universe obstruction 412. In this example, theavatar 105 would not be able to see and/or hear the conversationsassociated with the avatar 108; however, the avatar 105 would be able tosee and/or hear the conversations associated with the avatar 106, sincethe avatar 106 is between the virtual universe obstruction 412 and theavatar 105.

FIG. 5 conceptually depicts an example virtual universe system thatimplements another technique for modifying an environmental chatdistance associated with an environmental chat in a virtual universe. InFIG. 5, a perspective 523 of the virtual universe rendered at the clientcomputer 101A depicts the avatar 105 chatting with other avatars, i.e.,via environmental text and/or voice chat, within a region of the virtualuniverse.

In one implementation, at stage A, the client computer 101A determinesan environmental chat amount within a time window of a predeterminedamount of time in an area of the virtual universe associated with theenvironmental chat associated with an avatar being controlled by a user(e.g., avatar 105). In one example, to determine the environmental chatamount within the time window, one or more conversations between avatarswithin the time window are detected in the area of the virtual universeassociated with the environmental chat. In this example, theenvironmental chat amount can be the number of words associated with thedetected conversations between the avatars within the time window. Forinstance, in the example shown in FIG. 5, assuming the illustratedconversations are the only conversations detected within a time windowof a predetermined amount of time, the client computer 101A determinesthat the environmental chat amount is equal to 33 words. In anotherexample, the environmental chat amount can be the number of characters(with or without spaces) associated with the detected conversationsbetween the avatars within the time window. For instance, in the exampleshown in FIG. 5, the client computer 101A determines that theenvironmental chat amount is equal to 130 characters (with no spaces)within a time window of a predetermined amount of time. Similar to thedescription of FIG. 1, the virtual universe area associated with theenvironmental chat shown on FIG. 5 can be the area having a radius of R3virtual feet in all directions (i.e., 360 degrees) from the avatar 105.It is noted, however, that in other implementations the virtual universearea associated with the environmental chat may be different, e.g., asdescribed above with reference to FIGS. 2A and 2B.

At stage B, the client computer 101A determines the environmental chatdistance based on the environmental chat amount detected within the timewindow in the area of the virtual universe associated with theenvironmental chat. The client computer 101A may determine an initialenvironmental chat distance based on the detected environmental chatamount. In one implementation, the environmental chat distance isinversely proportional to the detected environmental chat amount. Forexample, with reference to the perspective 523, the client computer 101Amay select a first environmental chat distance of R3 (e.g., 60 virtualfeet) when the determined environmental chat amount is within a firstrange of environmental chat amount (e.g., 1-200 words), select a secondenvironmental chat distance of R2 (e.g., 40 virtual feet) when thedetermined environmental chat amount is within a second range ofenvironmental chat amount (e.g., 201-400 words), or select a thirdenvironmental chat distance of R1 (e.g., 20 virtual feet) when thedetermined environmental chat amount is within a third range ofenvironmental chat amount (e.g., 401-600+ words). It is noted, however,that in other implementations various predetermined number ofenvironmental chat distances corresponding to various ranges ofenvironmental chat amounts may be associated with the virtual universearea associated with the environmental chat.

At stage C, the client computer 101A modifies the environmental chatdistance in response to a change in the environmental chat amount withina subsequent time window of the predetermined amount of time in the areaof the virtual universe associated with the environmental chat. In oneexample, when the avatar 105 moves from a virtual universe location witha relatively low environmental chat amount to a virtual universelocation with a relatively high environmental chat amount, theenvironmental chat distance is reduced to decrease the environmentalchat amount within the virtual universe area associated with theenvironmental chat. In another example, when the avatar 105 moves from avirtual universe location with a relatively high environmental chatamount to a virtual universe location with a relatively lowenvironmental chat amount, the environmental chat distance is expandedto increase the environmental chat amount within the virtual universearea associated with the environmental chat. It is noted that thepredetermined amount of time associated with the initial time window andwith one or more subsequent time windows may be programmable.

FIG. 6 depicts an example flow diagram of a method for modifyingenvironmental chat distance based on a determined environmental chatamount within a time window of a predetermined amount of time in an areaof the virtual universe associated with an environmental chat. At block605, an environmental chat amount within a time window of apredetermined amount of time is determined in the area of the virtualuniverse associated with the environmental chat associated with anavatar being controlled by a user (e.g., avatar 105). As described abovewith reference to FIG. 5, the environmental chat amount can be thenumber of words or the number of characters (with or without spaces)associated with conversations between the avatars in an environmentaltext and/or voice chat detected within the time window. In oneimplementation, if the environmental chat is an environmental text chat,the client computer 101A may determine the environmental chat amount bycounting the number of words or the number of characters associated withthe conversations between avatars that are detected within the timewindow in the virtual universe area associated with the environmentaltext chat. In one example, the client computer 101A may include softwarethat identifies and counts each word by detecting the spaces thatseparate each of the words. In another implementation, if theenvironmental chat is an environmental voice chat, the client computer101A may include software that identifies and counts each word bydetecting the pauses that separate each of the words.

At block 610, an environmental chat distance is determined based on theenvironmental chat amount detected within the time window in the area ofthe virtual universe associated with the environmental chat. In oneimplementation, the environmental chat distance is inverselyproportional to the environmental chat amount detected within a timewindow. In one example, the client computer 101A may select anenvironmental chat distance from a plurality of predefined environmentalchat distances based on the environmental chat amount detected withinthe time window. In this example, a plurality of predefine ranges ofenvironmental chat amounts may be associated with the plurality ofpredefined environmental chat distances. In response to determining theenvironmental chat amount within the time window, the client computer101A selects the predefined environmental chat distance associated withthe predefined range of environmental chat amounts corresponding to thedetected environmental chat amount, e.g., as was described above withreference to FIG. 5.

At block 615, the environmental chat distance is modified in response toa change in the environmental chat amount within a subsequent timewindow of the predetermined amount of time in the area of the virtualuniverse associated with the environmental chat. In variousimplementations, after the initial time window, the client computer 101Adetermines the environmental chat amount within subsequent time windowsof the predetermined amount of time to determine whether to modify theenvironmental chat distance. In one example, the subsequent time windowsare consecutive time windows. In another example, the subsequent timewindows are spaced apart as desired. For example, the subsequent timewindows are spaced apart with constant time periods, or are spaced apartwith variable time periods (e.g., dependent on when the user associatedwith the avatar 105 manually initiates the environmental chat amountdetermination process).

It should be understood that the depicted flowchart of FIG. 6 is anexample meant to aid in understanding embodiments and should not be usedto limit embodiments or limit scope of the claims. Embodiments mayperform additional operations, fewer operations, operations in adifferent order, operations in parallel, and some operationsdifferently. For instance, in some implementations, if the environmentalchat includes both text and voice chat, the client computer 101A candetermine the environmental chat amount (e.g., the number of words) byanalyzing both the text and voice conversations between the avatarswithin the virtual universe area associated with the environmental chat.

Embodiments may take the form of an entirely hardware embodiment, anentirely software embodiment (including firmware, resident software,micro-code, etc.) or an embodiment combining software and hardwareaspects that may all generally be referred to herein as a “circuit,”“module” or “system.” Furthermore, embodiments of the inventive subjectmatter may take the form of a computer program product embodied in anytangible medium of expression having computer usable program codeembodied in the medium. The described embodiments may be provided as acomputer program product, or software, that may include amachine-readable medium having stored thereon instructions, which may beused to program a computer system (or other electronic device(s)) toperform a process according to embodiments, whether presently describedor not, since every conceivable variation is not enumerated herein. Amachine readable medium includes any mechanism for storing ortransmitting information in a form (e.g., software, processingapplication) readable by a machine (e.g., a computer). Themachine-readable medium may include, but is not limited to, magneticstorage medium (e.g., floppy diskette); optical storage medium (e.g.,CD-ROM); magneto-optical storage medium; read only memory (ROM); randomaccess memory (RAM); erasable programmable memory (e.g., EPROM andEEPROM); flash memory; or other types of medium suitable for storingelectronic instructions. In addition, embodiments may be embodied in anelectrical, optical, acoustical or other form of propagated signal(e.g., carrier waves, infrared signals, digital signals, etc.), orwireline, wireless, or other communications medium.

Computer program code for carrying out operations of the embodiments maybe written in any combination of one or more programming languages,including an object oriented programming language such as Java,Smalltalk, C++ or the like and conventional procedural programminglanguages, such as the “C” programming language or similar programminglanguages. The program code may execute entirely on a user's computer,partly on the user's computer, as a stand-alone software package, partlyon the user's computer and partly on a remote computer or entirely onthe remote computer or server. In the latter scenario, the remotecomputer may be connected to the user's computer through any type ofnetwork, including a local area network (LAN), a personal area network(PAN), or a wide area network (WAN), or the connection may be made to anexternal computer (for example, through the Internet using an InternetService Provider).

FIG. 7 depicts an example computer system. The computer system includesa processor unit 701 (possibly including multiple processors, multiplecores, multiple nodes, and/or implementing multi-threading, etc.). Thecomputer system includes memory 707. The memory 707 may be system memory(e.g., one or more of cache, SRAM, DRAM, zero capacitor RAM, TwinTransistor RAM, eDRAM, EDO RAM, DDR RAM, EEPROM, NRAM, RRAM, SONOS,PRAM, etc.) or any one or more of the above already described possiblerealizations of machine-readable media. The computer system alsoincludes a bus 703 (e.g., PCI, ISA, PCI-Express, HyperTransport®,InfiniBand®, NuBus, etc.), a network interface(s) 709 (e.g., an ATMinterface, an Ethernet interface, a Frame Relay interface, SONETinterface, wireless interface, etc.), and a storage device(s) 711 (e.g.,optical storage, magnetic storage, etc.). The computer system caninclude a virtual universe environmental chat distance unit 722 toimplement the embodiments described above with reference to FIGS. 1-6.In one implementation, the virtual universe environmental chat distanceunit 722 determines and modifies an environmental chat distance based onthe number of avatars that are detected within an area of the virtualuniverse associated with an environmental chat. In anotherimplementation, the virtual universe environmental chat distance unit722 determines and modifies an environmental chat distance based on theenvironmental chat amount that is detected within a time window of apredetermined amount of time in an area of the virtual universeassociated with the environmental chat. Any one of these functionalitiesmay be partially (or entirely) implemented in hardware and/or on theprocessing unit 701. For example, the functionality may be implementedwith an application specific integrated circuit, in logic implemented inthe processing unit 701, in a co-processor on a peripheral device orcard, etc. Further, realizations may include fewer or additionalcomponents not illustrated in FIG. 7 (e.g., video cards, audio cards,additional network interfaces, peripheral devices, etc.). The processorunit 701, the storage device(s) 711, and the network interface(s) 709are coupled to the bus 703. Although illustrated as being coupled to thebus 703, the memory 707 may be coupled to the processor unit 701.

While the embodiments are described with reference to variousimplementations and exploitations, it will be understood that theseembodiments are illustrative and that the scope of the inventive subjectmatter is not limited to them. In general, techniques for determiningand modifying environmental chat distance based on the number of avatarsthat are detected within an area of a virtual universe associated withan environmental chat and/or based on the environmental chat amount thatis detected within a time window of a predetermined amount of time in anarea of a virtual universe associated with an environmental chat asdescribed herein may be implemented with facilities consistent with anyhardware system or hardware systems. Many variations, modifications,additions, and improvements are possible.

Plural instances may be provided for components, operations orstructures described herein as a single instance. Finally, boundariesbetween various components, operations and data stores are somewhatarbitrary, and particular operations are illustrated in the context ofspecific illustrative configurations. Other allocations of functionalityare envisioned and may fall within the scope of the inventive subjectmatter. In general, structures and functionality presented as separatecomponents in the exemplary configurations may be implemented as acombined structure or component. Similarly, structures and functionalitypresented as a single component may be implemented as separatecomponents. These and other variations, modifications, additions, andimprovements may fall within the scope of the inventive subject matter.

1. A method comprising: determining a number of avatars in an area of avirtual universe associated with an environmental chat associated withan avatar; determining a chat distance associated with the environmentalchat based on the number of avatars in the area of the virtual universeassociated with the environmental chat; and modifying the chat distancein response to a change in the number of avatars in the area of thevirtual universe associated with the environmental chat.
 2. The methodof claim 1, wherein the area of the virtual universe associated with theenvironmental chat associated with an avatar comprises the area of thevirtual universe displayed on a computer system associated with theavatar.
 3. The method of claim 1, wherein said determining a chatdistance based on the number of avatars in the area of the virtualuniverse associated with the environmental chat comprises determiningthe chat distance such that the chat distance is inversely proportionalto the number of avatars in the area of the virtual universe.
 4. Themethod of claim 1, wherein said determining a chat distance based on thenumber of avatars in the area of the virtual universe associated withthe environmental chat comprises selecting a chat distance from aplurality of predefined chat distances based on the number of avatars inthe area of the virtual universe associated with the environmental chat.5. The method of claim 4, wherein, if the number of avatars in the areaof the virtual universe associated with the environmental chat is withina first predefined range of number of avatars, selecting a first chatdistance from the plurality of predefined chat distances, wherein, ifthe number of avatars in the area of the virtual universe associatedwith the environmental chat is within a second predefined range that ishigher than the first predefined range, selecting a second chat distancethat is less than the first chat distance from the plurality ofpredefined chat distances, wherein, if the number of avatars in the areaof the virtual universe associated with the environmental chat is withina third predefined range that is higher than the second predefinedrange, selecting a third chat distance that is less than the second chatdistance from the plurality of predefined chat distances.
 6. The methodof claim 1, wherein said change in the number of avatars in the area ofthe virtual universe associated with the environmental chat comprises achange from a first number of avatars associated with a first range ofnumber of avatars to a different number of avatars associated with asecond range of number of avatars.
 7. The method of claim 1, wherein theavatar associated with the environmental chat is controlled by a user,wherein a change in the number of avatars in the area of the virtualuniverse associated with the environmental chat is detected in responseto the avatar being controlled by the user moving to a differentlocation within the virtual universe, or in response to additionalavatars moving into or out of the virtual universe area associated withthe environmental chat.
 8. The method of claim 1, further comprisingdetermining whether the area of the virtual universe associated with theenvironmental chat comprises an environmental chat obstruction, wherein,if the area of the virtual universe associated with the environmentalchat does comprise an environmental chat obstruction, modifying the chatdistance associated with a subsection of the area of the virtualuniverse associated with the environmental chat based on a location ofthe environmental chat obstruction with respect to the avatar associatedwith the environmental chat.
 9. The method of claim 1, wherein theenvironmental chat is an environmental text chat, an environmental voicechat, or both an environmental voice and text chat.
 10. A methodcomprising: determining a number of avatars in an area of a virtualuniverse associated with an environmental chat associated with anavatar; determining a chat distance associated with the environmentalchat based on the number of avatars in the area of the virtual universeassociated with the environmental chat such that the chat distance isinversely proportional to the number of avatars; modifying the chatdistance in response to a change in the number of avatars in the area ofthe virtual universe associated with the environmental chat; determiningwhether the area of the virtual universe associated with theenvironmental chat comprises an environmental chat obstruction; and ifthe area of the virtual universe associated with the environmental chatcomprises an environmental chat obstruction, modifying the chat distanceassociated with the environmental chat based on a location of theenvironmental chat obstruction.
 11. The method of claim 10, wherein saiddetermining a chat distance based on the number of avatars in the areaof the virtual universe associated with the environmental chat such thatthe chat distance is inversely proportional to the number of avatarscomprises selecting a chat distance from a plurality of predefined chatdistances based on the number of avatars such that the chat distance isinversely proportional to the number of avatars.
 12. The method of claim10, wherein said change in the number of avatars in the area of thevirtual universe associated with the environmental chat comprises achange from a first number of avatars associated with a first range ofnumber of avatars to a different number of avatars associated with asecond range of number of avatars.
 13. The method of claim 10, wherein,if the area of the virtual universe associated with the environmentalchat comprises an environmental chat obstruction, modifying the chatdistance associated with a subsection of the area of the virtualuniverse associated with the environmental chat based on a location ofthe environmental chat obstruction with respect to the avatar associatedwith the environmental chat.
 14. The method of claim 10, wherein theenvironmental chat is an environmental text chat, an environmental voicechat, or both an environmental voice and text chat.
 15. One or moremachine-readable media having stored therein a program product, whichwhen executed a set of one or more processor units causes the set of oneor more processor units to perform operations that comprise: determininga number of avatars in an area of a virtual universe associated with anenvironmental chat associated with an avatar; determining a chatdistance based on the number of avatars in the area of the virtualuniverse associated with the environmental chat; and modifying the chatdistance in response to a change in the number of avatars in the area ofthe virtual universe associated with the environmental chat.
 16. Themachine-readable media of claim 15, wherein the program product whenexecuted causes the set of one or more processor units to performoperations that comprise determining the chat distance such that thechat distance is inversely proportional to the number of avatars in thearea of the virtual universe.
 17. The machine-readable media of claim15, wherein the program product when executed causes the set of one ormore processor units to perform operations that comprise modifying thechat distance in response to a change in the number of avatars in thearea of the virtual universe associated with the environmental chat froma first number of avatars associated with a first range of number ofavatars to a different number of avatars associated with a second rangeof number of avatars.
 18. An apparatus comprising: one or moreprocessing units; and a memory unit coupled to the one or moreprocessing units, the memory unit having stored therein programinstructions that are executable by the one or more processing units to:determine a number of avatars in an area of a virtual universeassociated with an environmental chat associated with an avatar;determine a chat distance based on the number of avatars in the area ofthe virtual universe associated with the environmental chat; and modifythe chat distance in response to a change in the number of avatars inthe area of the virtual universe associated with the environmental chat.19. The apparatus of claim 18, wherein the memory unit further comprisesprogram instructions that are executable by the one or more processingunits to determine the chat distance such that the chat distance isinversely proportional to the number of avatars in the area of thevirtual universe.
 20. The apparatus of claim 18, wherein the memory unitfurther comprises program instructions that are executable by the one ormore processing units to modifying the chat distance in response to achange in the number of avatars in the area of the virtual universeassociated with the environmental chat from a first number of avatarsassociated with a first range of number of avatars to a different numberof avatars associated with a second range of number of avatars.